I'm not sure of your knowledge level so I'll start at the basics...
- If you view source for any frameset you'll see it's very simple...typically less than 10 lines. (note: not view source for a frame inside the frameset...that'll be complex...but just the frameset itself...typically view source from a menu in IE and not right-clicking).
- If you copy the source from an existing frameset you can paste it into a form. Set the form's content type as HTML. and then you can view the form by previewing it, but use ?ReadForm instead of ?OpenForm.
- Now that you're convinced that you can serve up an exact copy of your original frameset from a form instead of just a frameset design, have a look at the frameset code in the form you designed. You'll notice that the default content for each frame is specified in the frameset html.
- Since you're now serving up the frameset from a form, you should know that you can pass any set of values to a form through appending "&keyA=blahblah&keyB=xyzabc" and the like. These values can be accessed in the form design through Query_String...and you can read up about it in the Designer Help. Also, take a look at @WebDbName and @URLQueryString (R6 features by the way, but any version of Domino can get at the Query_String and simulate @WebDbName through longer methods...the R4/5 forum should have lots of answers there).
- It's pretty simple to change the hard-coded frame source references to a "Computed Text" element that uses @WebDbName and @URLQueryString to display whatever default content you want for each frame.
- For example, if you always want a top navigation frame that is static you'd have that frame src always compute to "/" + @WebDbName + "the rest of the url". However, if the content frame is variable the src reference would be along the lines of "/" + @WebDbName + "/maybeotherstuff" + @UrlQueryString("contentId") + "the rest of the url". You'll have to assemble your own URLs and I can't give you much more advice here without knowing more. The URL that would launch your frameset with custom content would be along the lines of "http://www.acme.com/path/database.nsf/framesetForm?ReadForm&contentId=whateveryouwant". You'd use "/" + @WebDbName to get the first part dynamic and then you can set the rest up however you want. I typically pass a doc UNID and then assemble my frame source to go to the document through a view sorted by UNID. You can pass multiple variables/values if you need to.
I hope this helps. It's a very powerful tool once you get the hang of it.
...Neil